package com.example.guli.service.edu.mapper;


import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.example.guli.service.edu.entity.vo.CourseVo;
import com.example.guli.service.base.DTO.CourseDto;
import com.example.guli.service.edu.entity.Course;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.guli.service.edu.entity.vo.CoursePublishVo;
import com.example.guli.service.edu.entity.vo.WebCourseQueryVo;
import com.example.guli.service.edu.entity.vo.WebCourseVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * <p>
 * 课程 Mapper 接口
 * </p>
 *
 * @author shunxuan
 * @since 2020-07-16
 */
@Repository
public  interface CourseMapper extends BaseMapper<Course> {

     List<CourseVo> selectPageByCourseQueryVo(
           Page<CourseVo> pageParam,
           @Param(Constants.WRAPPER) QueryWrapper<CourseVo> queryWrapper
   );

    CoursePublishVo selectCoursePublishVoById(String id);

    CourseDto selectCourseDtoById(String courseId);

    WebCourseVo selectWebCourseVoById(String courseId);


}
